Skip to content
This repository has been archived by the owner on Jan 11, 2024. It is now read-only.

FM-107: Switch to cometbft #110

Merged
merged 4 commits into from
May 19, 2023
Merged

FM-107: Switch to cometbft #110

merged 4 commits into from
May 19, 2023

Conversation

aakoshh
Copy link
Contributor

@aakoshh aakoshh commented May 18, 2023

Closes consensus-shipyard/ipc#340

  • Switch to official tendermint-rs release
  • Update docs to use new install instructions and change the commands to cometbft instead of tendermint
  • Use cometbft docker image (there is a 0.37.x tag) in e2e tests

As a side effect of catching up with tendermint-rs, I had to change what the FvmQuery::Call ABCI query gets back in response. This is the one that is running a transaction in a local read-only fashion. Previously I returned an IPLD encoded DeliverTx construct from tendermint-rs itself, so that the client library has the same fields and data types to work with when it comes to seeing transaction results. However, the Deserialize trait was removed from this type, so while I could turn it into bytes with fvm_ipld_encoding, there wasn't a way to get it back. Apparently they introduced a dialect module which will have complete serde support, it's generic in its even payloads, which is where I guess there were some differences across consumers.

To get around this problem, I am now turning the DeliverTx into protobuf bytes, and encode that as IPLD (not needed but everything else is IPLD). I thought this is actually better because at least the ABCI protobuf is available to all consumers, although it might be a bad idea to push that dependency to consumers. If push comes to shove we can come up with a DTO, but it needs to duplicate events too. Or we can look at this dialect, but that's specific to this Rust library. Our RPC client hides this craziness from the consumer.

@aakoshh aakoshh changed the title FM-107: Switch to comet-bft FM-107: Switch to cometbft May 18, 2023
@aakoshh aakoshh requested a review from adlrocha May 19, 2023 10:50
@aakoshh aakoshh merged commit 94cbc1c into master May 19, 2023
@aakoshh aakoshh deleted the fm-107-switch-to-comet-bft branch May 19, 2023 11:14
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Switch from Tendermint to Comet BFT
1 participant